<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
namespace Agp\CoreBundle\Manager;

use Doctrine\ORM\EntityManager;
use Agp\CoreBundle\Entity\Evento;
use Agp\CoreBundle\Entity\EventoInfo;
use Agp\CoreBundle\Manager\BaseManager;
/**
 * Description of EventoInfoManager
 *
 * @author bondcs
 */
class EventoInfoManager extends BaseManager
{
    public function ativar($eventoInfo){
        $user = $this->container->get("security.context")->getToken()->getUser();
        $manager = $this->container->get("agp.habilitaProdutoTerminal.manager");
        $habilitaProdutoRep = $this->container->get("agp.habilitaProdutoTerminal.repository");
        
            try{

               foreach ($eventoInfo->getEventoInfoTerminalEmpresaList() as $eventoInfoTerminalEmpresa){
                   $manager->habilitaProdutoTerminal($eventoInfoTerminalEmpresa->getListaPreco(), $eventoInfoTerminalEmpresa->getTerminalEmpresa(), $eventoInfo->getEventos()->first());
               }

            }  catch (\Exception $e){
               echo $e->getMessage();
            }
    }
    
//    public function ativar($eventoInfo){
//        $user = $this->container->get("security.context")->getToken()->getUser();
//        $manager = $this->container->get("agp.habilitaProdutoTerminal.manager");
//        
//        if (!$eventoInfo->isAtivo()){
//            try{
//               
//               if ($eventoInfo->getEventoAtual() === null || $eventoInfo->getEventoAtual()->getDtInicio() != $eventoInfo->getDtInicio()){
//                    $evento = new Evento;
//                    $evento->setNome($eventoInfo->getNome()." (".$eventoInfo->getDtInicio()->format("d/m/y").")");
//                    $evento->setEmpresa($user->getEmpresa());
//                    $evento->setDtInicio($eventoInfo->getDtInicio());
//                    $evento->setDtTermino($eventoInfo->getDtTermino());
//                    $this->persist($evento);
//                    
//                    $eventoInfo->setEventoAtual($evento);
//                    
//               }
//
//               foreach ($eventoInfo->getEventoInfoTerminalEmpresaList() as $eventoInfoTerminalEmpresa){
//                   $manager->habilitaProdutoTerminal($eventoInfoTerminalEmpresa->getListaPreco(), $eventoInfoTerminalEmpresa->getTerminalEmpresa(), $eventoInfo->getEventoAtual());
//               }
//               
//               
//               $eventoInfo->setSituacao(EventoInfo::SIT_ATIVO);
//               $this->update($eventoInfo);
//
//            }  catch (\Exception $e){
//               echo $e->getMessage();
//            }
//        }else{
//            
//            $this->container->get("agp.habilitaProdutoTerminal.repository")->clearProdutosHabilitadosByEvento($eventoInfo->getEventoAtual());
//            
//            $eventoInfo->setSituacao(EventoInfo::SIT_INATIVO);
//            $this->update($eventoInfo);
//            
//        }
//    }
   

}

?>
